什么是NUMA架构

64次阅读
没有评论

NUMA 架构

NUMA 架构,非一致性内存访问,是一种多个 CPU 如何访问内存的架构模型。

起初 CPU 这样访问内存。

什么是 NUMA 架构

在这个访问模型(SMP)中,多个 cpu 通过同一条总线对内存同时进行操作,在 CPU 数量少(2-4)的时候,性能瓶颈并不明显,但是当 cpu 数量增多,一些瓶颈就出现了。

什么是 NUMA 架构

为了解决多个多个 cpu 在同一个总线上同时对 cpu 进行操作的瓶颈,于是 NUMA 架构出现了。

也就是将多个内存分成多个区域(nodes),在每个区域中分配对应的 CPU。

也就是一个 node 中,内部的 cpu 使用一条总线去操作本地的内存,而这时候的访问速度是最快的,然而当内存不够时,便出现了跨 node 去访问内存的情况,此种情况反而增加了延迟速度。

什么是 NUMA 架构

很多时候 NUMA 架构都是默认开启的,但是有些时候一些程序会频繁跨 node 去访问内存,像 redis 或者其他数据库,这时候我们需要将 NUMA 进行关闭。

vim /etc/default/grub 文件,在 GRUP_CMDLINE_LINUX=”” 引号里最后添加下面配置。

numa=off

重新生成 grup2.cfg

grub2-mkconfig -o /etc/grub2.cfg

重新启动 linux 服务器

reboot

重启后确认是否已经关闭 NUMA:

dmesg|grep -i numa

观察是否有如下字样

NUMA turned off
正文完
 
评论(没有评论)
验证码